CancelarPedido = function(){
	var configWindowTop = {
		edit: "ctgProductoEditarTop",
		add: "cancelarPedidoAgregarTop",
		remove: "cancelarPedidoEliminarTop",
	};
	return {
		guardarRequisiciones: function(){
			Asi.message.progress(Asi.constants.SAVING);
				Ext.getCmp("cancelarPedidoForm").getForm().submit({
					url: Asi.constants.CONTEXT_PATH + "/cliente/guardarPedidoCancelado",
	    			timeout: Asi.constants.TIMEOUT_SECONDS,
	    			params: {
	    				"idPedidos": CancelarPedido.obtenerPedidosId(),
	    				"estadoPedido": CancelarPedido.obtenerEstadosPedidos()
	    			},
	    			success: function(form, action){
	    				var gridCompra = Ext.getCmp("cancelarPedidoGrid");
//	    				gridCompra.getStore().removeAll();
	    				gridCompra.getStore().sync();
	    				Asi.message.alert(action.result.message);
	    				if(action.result.pedidosNuevos){
	    					var controlPedidoGrid = Ext.getCmp("cancelarPedidoGrid");
	    					controlPedidoGrid.getStore().removeAll();
	    					controlPedidoGrid.getStore().loadData(action.result.pedidosNuevos);
	    				}
	    			},
	    			failure: Asi.form.failureProcedure
				});
		},
		obtenerEstadosPedidos: function(){
			var i = 0;
			var grid = Ext.getCmp("cancelarPedidoGrid");
			var seprarado = "~";
			var gridData = "";
			Ext.each(grid.getStore().getRange(), function(){
				gridData = gridData + grid.getStore().getRange()[i].data.canceladoEstado + seprarado;
				i++;
          });
			return gridData == "~" ? "":gridData;
		},
		obtenerPedidosId: function(){
			var i = 0;
			var grid = Ext.getCmp("cancelarPedidoGrid");
			var seprarado = "~";
			var gridData = "";
			Ext.each(grid.getStore().getRange(), function(){
				gridData = gridData + grid.getStore().getRange()[i].data.pedidoId + seprarado;
				i++;
          });
			return gridData == "~" ? "":gridData;
		},
		init: function(config){
			var pedidosNuevos = config.pedidosNuevos;
			var configToReturn = {};
			configToReturn.items = [];
			configToReturn.menu = AsiBotones.getBotones(AsiGen.getTipoUsuario(), AsiGen.getPantallaId());
			configToReturn.items.push({
				flex: 1,
				title: "REQUISICION DE INVENTARIO",
				autoScroll: true,
				layout : {
					type : "table",
					columns : 1,
					tableAttrs : {
						style : {
							width : "730px",
							"margin-top" : "5px",
							"margin-bottom" : "40px"
						},
						align : "center"
					}
				},
//				modal : true,
				closable : false,
				defaults: {width: 730, margins: "5 0 5 0"},
				dockedItems: [
					{
						xtype: "toolbar",
						dock: "top",
						items: [
						   '->',
					       {
					    	   text: "Cancelar Producto",
					    	   id: "cancelarPedidoGuardarTop",
							   iconCls: Asi.constants.icons.SAVE_ICON,
							   handler: CancelarPedido.guardarRequisiciones
					       }
					    ]
					}
	            ],
				items: [
				        
				        
{xtype: "form",
	id: "cancelarPedidoForm",
	flex: 1,
	autoScroll: true,
	items: [
				        
					{
							title: "LISTA DE PEDIDOS A REALIZADOS",
							xtype: "grid",
							id: "cancelarPedidoGrid",
							height: 250,
							plugins: [Ext.create('Ext.grid.plugin.CellEditing',{clicksToEdit: 1})],
							minHeight: 250,
							collapsible : true,
							store: new Ext.data.SimpleStore({
						    	data: pedidosNuevos || [],
						    	fields: [
									"pedidoId",
									"pedidoFechaPedido",
									"pedidoFechaEntrega",
									"pedidoEstado",
									"pedidoDireccionEntrega",
									"usuario"
				    	        ]
						    }),
						    columns: [
					            {header: "Numero pedido",  dataIndex: "pedidoId", minWidth: 120},
					            {header: "Fecha del pedido",  dataIndex: "pedidoFechaPedido", width: 150},
					            {header: "Fecha de Entrega",  dataIndex: "pedidoFechaEntrega", width: 120},
					            {header: "Direccion de entrega",  dataIndex: "pedidoDireccionEntrega", width: 150},
					            {header: "Usuario",  dataIndex: "usuario", width: 120},
					            
					            {
			                        header: 'Estado',
			                        dataIndex: 'pedidoEstado',
			                        renderer: function(value){
			                        	if(value == 0){
			                        		return 'NUEVO'
			                        	}
			                        	if (value == 1){
			                        		return 'PAGADO'
			                        	}
			                        }
			                    },
			                    {
						    	  	header: 'Cancelarlo?',
									align:'center',
									dataIndex: 'canceladoEstado',
									xtype:'checkcolumn',
									draggable: true,
									renderer : function(value){
								        var cssPrefix = Ext.baseCSSPrefix,
								            cls = [cssPrefix + 'grid-checkheader'];

								        if (value == "4" ||  value == 4 || value == false ||  value == "false") {
								            cls.push(cssPrefix + 'grid-checkheader-checked');
								        }
								        return '<div class="' + cls.join(' ') + '">&#160;</div>';
								    }

								}

						    ]
						}
					
					
					
					 ]} 

				]
			});
			return configToReturn;
		}
	};
}();